<template>
	<view id="official-authorize">
		  <view class="wechat-auth-container" @click="wxAuthorize">
		    <image class="icon" src="../../../static/channel/wechat.png"></image>
		    <text class="title">微信授权登录</text>
		  </view>
	</view>
</template>

<script>
	import * as LoginApi from '@/api/login/index.js'
	export default {
	  components: {
	  },
	  data() {
	    return {
			
		}
	  },
	  onLoad(query) {
		  // 如果授权了会获取到 code
	  	 if (query?.code) {
			// 获取到 code 后，向后端发送登录请求
			console.log('获取到 code：', query.code);
			console.log('向后端发送登录请求');
			// this.reqLogin(query.code)
		}
	  },
	  methods: {
		  // authorizeLogin() {
			 //  console.log("App微信拉起授权")		  
			 //  var that=this		  
			 //  uni.getProvider({		  
			 //      service: 'oauth',		  
			 //      success: function(res) {		  
			 //          console.log(res.provider);		  
			 //          //支持微信、qq和微博等		  
			 //          if (~res.provider.indexOf('weixin')) {	  
			 //              uni.login({		  
			 //                provider: 'weixin',		  
			 //                success: function (loginRes) {		  
			 //                    console.log("App微信获取用户信息成功",loginRes);	  
			 //                    that.getApploginData(loginRes)  //请求登录接口方法		  
			 //                },
			 //                fail:function(res){		  
			 //                console.log("App微信获取用户信息失败",res);
			 //                }
			 //              })
			 //          }
			 //      }
			 //  });
		  // },
		  // //请求登录接口方法	  
		  // getApploginData(data){	  
			 //  var that =this	  
			 //  //这边是前端自己去调微信用户信息的接口，根据接口需要请求，如果不需要前端去获取的话就交给后端，可省去次操作  
			 //  uni.request({	  
				//   url: "https://api.weixin.qq.com/sns/userinfo?access_token="+data.authResult.access_token+"&openid="+data.authResult.openid,	  
				//   method: 'GET',	  
				//   dataType: 'json',	  
				//   header: {	  
				//     'content-type': 'application/x-www-form-urlencoded' // 默认值	  
				//   },	  
				//   success(res) {	  
				//   console.log('【登录回调啾啾啾】',res)	  
				//   // that.$api.ajax('smdc/index/applogin', res.data,function(ret){	  
				//   // console.log("登录接口成功回调：",ret)	  
				//   // },'POST',true)	  
				//   },fail() {	  
				//   }	  
			 //  })
		  // },
		  
		  
		  // 请求后端登录
		  // reqLogin ( code ){
		  // 		if(loading.value) return
		  // 		loading.value = true
		  // 		uni.showLoading({ title:'授权登录中...',mask:true})
		  // 		uni.request({
		  // 			url:'http://127.0.0.1:3000/api/weixin/login',
		  // 			method:'POST',
		  // 			data:{ code },
		  // 			success(res) {
		  // 				console.log('登录-res',res.data.userInfo);
		  // 				userInfo.value = res.data.userInfo
		  // 			},
		  // 			fail(err) {
		  // 				console.log('登录-err',err);
		  // 				uni.showToast({
		  // 					icon:'fail',
		  // 					title:'登录出错了！'
		  // 				})
		  // 			},
		  // 			complete() {
		  // 				loading.value = false
		  // 				uni.hideLoading()
		  // 			}
		  // 		})
		  // },
		 async wxAuthorize() {  
		      let link = window.location.href;  
		      let params =this.getUrlParam('code');  // 地址解析  
		          console.log("code:",params);  	
		      // 如果拿到code，调用授权接口，没有拿到就跳转微信授权链接获取   
		   //    if (params) {  
		   //        console.log("获取到code");  
		   //        // api.wxAuth(params); // 调用后台接口，授权   
		   //    }else {  
		   //        console.log("没有code");  
		   //        let appid = 'wx2d9c964512e9a77f';  //修改为你的appid
		   //        //1.使用encodeURIComponent以及JSON.stringify()方法对对象进行字符串化和编码，这样可以控制url参数的长度，参考示例代码（uni-app书写方式，微信小程序自己改。）  
		   //        let uri = encodeURIComponent(link);  
		  	
		   //        //2.接受信息的页面使用JSON.parse()以及decodeURIComponent()接收和解码参数。    
		   //        //snsapi_base   //snsapi_base    scope = snsapi_base（不弹出授权页面，直接跳转，只能获取用户 openid ）。  
		   //        //snsapi_userinfo  弹出  
		  	
		   //        let authURL = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${uri}&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect`;  
		   //        window.location.href = authURL;  
		   //    }
		   window.location.replace(`http://wly.xcnf.com//index.php?s=/api/wechat/getAuthUrl&refereeId=${uni.getStorageSync('userId')}`)
			 // await this.getUserAuthUrl().then(res => {
				//   console.log(res,'res111111111')
				//  window.location.replace(res.data)
				//       //  // 检查响应头中的Location字段来获取重定向URL
				//       //  const redirectUrl = res.data.header['Location'];
				// 	     // console.log(redirectUrl,'res111111111')
				//       //  if (redirectUrl) {
				//       //    // 执行重定向
				//       //    uni.redirectTo({
				//       //      url: redirectUrl,
				//       //    });
				//       //  }
			 // })
		  },
		  // 获取账户资产
		  getUserAuthUrl() {
		    const app = this
		    return new Promise((resolve, reject) => {
		       // LoginApi.userGetAuthUrl({}, { load: true })
		       //  .then(result => {
		       //    resolve(result)
		       //  })
		       //  .catch(err => {
		       //    if (err.result && err.result.status == 401) {
		       //      resolve(null)
		       //    } else {
		       //      reject(err)
		       //    }
		       //  })
				uni.request({
					url: 'http://wly.xcnf.com//index.php?s=/api/wechat/getAuthUrl&refereeId=1', // 替换为你的API地址
					method: 'GET',
					async: false, // 设置为同步请求
					success: (result) => {
					 
					  resolve(result)
					},
					fail: (err) => {
					  console.error('请求失败:', err);
					  reject(err)
					}
				})
		    })
		  },
		  getUrlParam (name) {
		    var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)')
		    let url = window.location.href.split('#')[0]
		    let search = url.split('?')[1]
		    if (search) {
		      var r = search.substr(0).match(reg)
		      if (r !== null) return unescape(r[2])
		      return null
		    } else {
		      return null
		    }
		  },
	  }
	}
</script>

<style scoped lang="scss">
	.wechat-auth-container {
	  display: flex;
	  justify-content: center;
	  margin-top: 30rpx;
	}
	
	.icon {
	  width: 38rpx;
	  height: 38rpx;
	  margin-right: 15rpx;
	}
	
	.title {
	  font-size: 28rpx;
	  color: #666666;
	}
</style>